The distributed system has several tens to several thousands of nodes (computer/storage device) each provided with a processor and a storage medium. The nodes connected to each other by a network are used as one distributed system. In this way, the distributed system is capable of providing a computing power and/or a storage capacity which are impossible to obtain from one node.
An example of the distributed system is a distributed-storage system which comprises such nodes connected to each other by a network. The distributed-storage system stores data in HDDs (Hard Disk Drives) of the nodes and/or memories of the nodes and makes use of the stored data. In the distributed-storage system, for certain data, software or special hardware is used for determining which node memory is used for storing the data and which node computer is used for processing the data. That is to say, by dynamically changing the operation in accordance with the state of the system, the allocation of resources in the system can be adjusted so that the performance of the system can be enhanced when seen from the system user (or the client computer).
The amount of electric power consumed by 1 node included in a distributed system is about 150 W/H. Since a distributed system having a large size includes several hundreds to several thousands of such nodes, there is raised a problem that the amount of power consumed by the entire system is very large.
Since the magnitude of the load borne by the distributed system changes from time to time, however, a load requiring the 100% use of the nodes (or the use of all the nodes) is not always borne by the distributed system all the time. Thus, the number of ordinary nodes used in the system also changes from time to time. For example, only 10% of nodes in the system are used at one time and 90% of nodes in the system are used at another time.
In accordance with such changes in load magnitude, a node may incidentally enter an idle state in which the node is not carrying out any job or, in accordance with the magnitude of the load, the number of job processing nodes can be changed so that a node can be intentionally put in an idle state. For example, Patent Document 1 describes a cluster system which reduces the amount of consumed electrical power by putting a node in an idle state of carrying out no job in a suspend state.
In a computer system for carrying out large-scale computations by making use of a plurality of computers connected to each other as is the case with a super computer, the computations are performed by assigning jobs to a plurality of nodes in job management of assigning computation jobs to the nodes. That is to say, in this job management, when a certain job is completed, the next job is assigned to a plurality of nodes.
Patent Document 2 discloses a job management method adopted by a computer system such as the super computer described above to serve as a method for carrying out a job assigned to the system at a small amount of consumed power. In accordance with the job management method disclosed in Patent Document 2, the amount of electric power consumed by the entire system is reduced as follows. First of all, the conditions of jobs to be carried out by the computer system are saved whereas future job execution timings and the number of nodes required for the execution of each of the jobs are determined. Then, the nodes required for the execution of each of the jobs are prepared in advance prior to the execution of the job. On the other hand, a node not required for execution of a job is terminated.
In many cases, as the node termination used in the conventional technologies, node termination prescribed in an ACPI (Advanced Configuration and Power Interface) specification described in Non-patent Document 1 is normally adopted.